package com.ruoyi.customerSample.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 检测合同基本信息对象 contract_basic_info
 * 
 * @author ruoyi
 * @date 2023-05-12
 */
@ApiModel("检测合同基本信息对象")
public class ContractBasicInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private String id;

    /** 合同编号 */
    @Excel(name = "合同编号")
    @ApiModelProperty(value = "合同编号")
    private String contractNum;

    /** 合同起始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同起始日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "合同起始日期")
    private Date signedStartTime;

    /** 合同结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "合同结束日期")
    private Date signedEndTime;

    /** 委托方名称 */
    @Excel(name = "委托方名称")
    @ApiModelProperty(value = "委托方名称")
    private String clientName;

    /** 委托方地址 */
    @Excel(name = "委托方地址")
    @ApiModelProperty(value = "委托方地址")
    private String clientAdress;

    /** 委托方联系人 */
    @Excel(name = "委托方联系人")
    @ApiModelProperty(value = "委托方联系人")
    private String clientContracter;

    /** 委托方电话 */
    @Excel(name = "委托方电话")
    @ApiModelProperty(value = "委托方电话")
    private String clientPhone;

    /** 受托方名称 */
    @Excel(name = "受托方名称")
    @ApiModelProperty(value = "受托方名称")
    private String entrustedName;

    /** 受托方地址 */
    @Excel(name = "受托方地址")
    @ApiModelProperty(value = "受托方地址")
    private String entrustedAdress;

    /** 受访托联系人 */
    @Excel(name = "受访托联系人")
    @ApiModelProperty(value = "受访托联系人")
    private String entrustedContracter;

    /** 受托方电话 */
    @Excel(name = "受托方电话")
    @ApiModelProperty(value = "受托方电话")
    private String entrustedPhone;

    /** 开户行 */
    @Excel(name = "开户行")
    @ApiModelProperty(value = "开户行")
    private String bank;

    /** 开户行电话 */
    @Excel(name = "开户行电话")
    @ApiModelProperty(value = "开户行电话")
    private String bankNum;

    /** 委托项目 */
    @Excel(name = "委托项目")
    @ApiModelProperty(value = "委托项目")
    private String items;

    /** 签订合同日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "签订合同日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "签订合同日期")
    private Date signedDate;

    /** 附件路径 */
    private String fileUrl;

    /** 上传人 */
    private String uploader;

    /** 上传时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date uploadTime;

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public String getContractNum() {
        return contractNum;
    }

    public void setContractNum(String contractNum) {
        this.contractNum = contractNum;
    }

    public void setSignedStartTime(Date signedStartTime)
    {
        this.signedStartTime = signedStartTime;
    }

    public Date getSignedStartTime() 
    {
        return signedStartTime;
    }
    public void setSignedEndTime(Date signedEndTime) 
    {
        this.signedEndTime = signedEndTime;
    }

    public Date getSignedEndTime() 
    {
        return signedEndTime;
    }
    public void setClientName(String clientName) 
    {
        this.clientName = clientName;
    }

    public String getClientName() 
    {
        return clientName;
    }
    public void setClientAdress(String clientAdress) 
    {
        this.clientAdress = clientAdress;
    }

    public String getClientAdress() 
    {
        return clientAdress;
    }
    public void setClientContracter(String clientContracter) 
    {
        this.clientContracter = clientContracter;
    }

    public String getClientContracter() 
    {
        return clientContracter;
    }
    public void setClientPhone(String clientPhone) 
    {
        this.clientPhone = clientPhone;
    }

    public String getClientPhone() 
    {
        return clientPhone;
    }
    public void setEntrustedName(String entrustedName) 
    {
        this.entrustedName = entrustedName;
    }

    public String getEntrustedName() 
    {
        return entrustedName;
    }
    public void setEntrustedAdress(String entrustedAdress) 
    {
        this.entrustedAdress = entrustedAdress;
    }

    public String getEntrustedAdress() 
    {
        return entrustedAdress;
    }
    public void setEntrustedContracter(String entrustedContracter) 
    {
        this.entrustedContracter = entrustedContracter;
    }

    public String getEntrustedContracter() 
    {
        return entrustedContracter;
    }
    public void setEntrustedPhone(String entrustedPhone) 
    {
        this.entrustedPhone = entrustedPhone;
    }

    public String getEntrustedPhone() 
    {
        return entrustedPhone;
    }
    public void setBank(String bank) 
    {
        this.bank = bank;
    }

    public String getBank() 
    {
        return bank;
    }
    public void setBankNum(String bankNum) 
    {
        this.bankNum = bankNum;
    }

    public String getBankNum() 
    {
        return bankNum;
    }
    public void setItems(String items) 
    {
        this.items = items;
    }

    public String getItems() 
    {
        return items;
    }
    public void setSignedDate(Date signedDate) 
    {
        this.signedDate = signedDate;
    }

    public Date getSignedDate() 
    {
        return signedDate;
    }

    public String getFileUrl() {
        return fileUrl;
    }

    public void setFileUrl(String fileUrl) {
        this.fileUrl = fileUrl;
    }

    public String getUploader() {
        return uploader;
    }

    public void setUploader(String uploader) {
        this.uploader = uploader;
    }

    public Date getUploadTime() {
        return uploadTime;
    }

    public void setUploadTime(Date uploadTime) {
        this.uploadTime = uploadTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("signedStartTime", getSignedStartTime())
            .append("signedEndTime", getSignedEndTime())
            .append("clientName", getClientName())
            .append("clientAdress", getClientAdress())
            .append("clientContracter", getClientContracter())
            .append("clientPhone", getClientPhone())
            .append("entrustedName", getEntrustedName())
            .append("entrustedAdress", getEntrustedAdress())
            .append("entrustedContracter", getEntrustedContracter())
            .append("entrustedPhone", getEntrustedPhone())
            .append("bank", getBank())
            .append("bankNum", getBankNum())
            .append("items", getItems())
            .append("signedDate", getSignedDate())
            .toString();
    }
}
